<!--#if expr="$FAQMASTER" -->
 <!--#set var="STANDALONE" value="" -->
 <!--#set var="INCLUDED" value="YES" -->
 <!--#if expr="$QUERY_STRING = TOC" -->
  <!--#set var="TOC" value="YES" -->
  <!--#set var="CONTENT" value="" -->
 <!--#else -->
  <!--#set var="TOC" value="" -->
  <!--#set var="CONTENT" value="YES" -->
 <!--#endif -->
<!--#else -->
 <!--#set var="STANDALONE" value="YES" -->
 <!--#set var="INCLUDED" value="" -->
 <!--#set var="TOC" value="" -->
 <!--#set var="CONTENT" value="" -->
<!--#endif -->
<!--#if expr="$STANDALONE" -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
 <HEAD>
  <TITLE>Apache Server Frequently Asked Questions</TITLE>
 </HEAD>
<!-- Background white, links blue (unvisited), navy (visited), red (active) -->
 <BODY
  BGCOLOR="#FFFFFF"
  TEXT="#000000"
  LINK="#0000FF"
  VLINK="#000080"
  ALINK="#FF0000"
 >
  <!--#include virtual="header.html" -->
  <H1 ALIGN="CENTER">Apache Server Frequently Asked Questions</H1>
  <P>
  $Revision: 1.3 $ ($Date: 2000/01/30 15:47:42 $)
  </P>
  <P>
  The latest version of this FAQ is always available from the main
  Apache web site, at
  &lt;<A
       HREF="http://www.apache.org/docs/misc/FAQ.html"
       REL="Help"
      ><SAMP>http://www.apache.org/docs/misc/FAQ.html</SAMP></A>&gt;.
  </P>
<!-- Notes about changes:                                           -->
<!--  - If adding a relative link to another part of the            -->
<!--    documentation, *do* include the ".html" portion.  There's a -->
<!--    good chance that the user will be reading the documentation -->
<!--    on his own system, which may not be configured for          -->
<!--    multiviews.                                                 -->
<!--  - When adding items, make sure they're put in the right place -->
<!--    - verify that the numbering matches up.                     -->
<!--  - *Don't* use <PRE></PRE> blocks - they don't appear          -->
<!--    correctly in a reliable way when this is converted to text  -->
<!--    with Lynx.  Use <DL><DD><CODE>xxx<BR>xx</CODE></DD></DL>    -->
<!--    blocks inside a <P></P> instead.  This is necessary to get  -->
<!--    the horizontal and vertical indenting right.                -->
<!--  - Don't forget to include an HR tag after the last /P tag     -->
<!--    but before the /LI in an item.                              -->
  <P>
  If you are reading a text-only version of this FAQ, you may find numbers
  enclosed in brackets (such as &quot;[12]&quot;).  These refer to the list of
  reference URLs to be found at the end of the document.  These references
  do not appear, and are not needed, for the hypertext version.
  </P>
  <H2>The Questions</H2>
<OL TYPE="A">
<!--#endif -->
<!--#if expr="$TOC || $STANDALONE" -->
 <LI value="2"><STRONG>General Technical Questions</STRONG>
  <OL>
   <LI><A HREF="#what2do">&quot;Why can't I ...?  Why won't ...
        work?&quot;  What to do in case of problems</A>
   </LI>
   <LI><A HREF="#compatible">How compatible is Apache with my existing
        NCSA 1.3 setup?</A>
   </LI>
   <LI><A HREF="#year2000">Is Apache Year 2000 compliant?</A>
   </LI>
   <LI><A HREF="#submit_patch">How do I submit a patch to the Apache Group?</A>
   </LI>
   <LI><A HREF="#domination">Why has Apache stolen my favourite site's
        Internet address?</A>
   </LI>
   <LI><A HREF="#apspam">Why am I getting spam mail from the Apache site?</A>
   </LI>
   <LI><A HREF="#redist">May I include the Apache software on a CD or other
        package I'm distributing?</A>
   </LI>
   <LI><A HREF="#zoom">What's the best hardware/operating system/... How do
        I get the most out of my Apache Web server?</A>
   </LI>
   <LI><A HREF="#regex">What are "regular expressions"?</A>
   </LI>
   <li><a href="#binaries">Why isn't there a binary for my platform?</a></li>
  </OL>
 </LI>
<!--#endif -->
<!--#if expr="$STANDALONE" -->
</OL>

<HR>

  <H2>The Answers</H2>
<!--#endif -->
<!--#if expr="! $TOC" -->

  <H3>B. General Technical Questions</H3>
<OL>

 <LI><A NAME="what2do">
      <STRONG>&quot;Why can't I ...?  Why won't ... work?&quot;  What to
      do in case of problems</STRONG>
     </A>
  <P>
  If you are having trouble with your Apache server software, you should
  take the following steps:
  </P>
  <OL>
   <LI><STRONG>Check the errorlog!</STRONG>
    <P>
    Apache tries to be helpful when it encounters a problem.  In many
    cases, it will provide some details by writing one or messages to
    the server error log.  Sometimes this is enough for you to diagnose
    &amp; fix the problem yourself (such as file permissions or the like).
    The default location of the error log is
    <SAMP>/usr/local/apache/logs/error_log</SAMP>, but see the
    <A HREF="../mod/core.html#errorlog"><SAMP>ErrorLog</SAMP></A>
    directive in your config files for the location on your server.
    </P>
   </LI>
   <LI><STRONG>Check the
    <A HREF="http://www.apache.org/docs/misc/FAQ.html">FAQ</A>!</STRONG>
    <P>
    The latest version of the Apache Frequently-Asked Questions list can
    always be found at the main Apache web site.
    </P>
   </LI>
   <LI><STRONG>Check the Apache bug database</STRONG>
    <P>
    Most problems that get reported to The Apache Group are recorded in
    the
    <A HREF="http://bugs.apache.org/">bug database</A>.
    <EM><STRONG>Please</STRONG> check the existing reports, open
    <STRONG>and</STRONG> closed, before adding one.</EM>  If you find
    that your issue has already been reported, please <EM>don't</EM> add
    a &quot;me, too&quot; report.  If the original report isn't closed
    yet, we suggest that you check it periodically.  You might also
    consider contacting the original submitter, because there may be an
    email exchange going on about the issue that isn't getting recorded
    in the database.
    </P>
   </LI>
   <LI><STRONG>Ask in the <SAMP>comp.infosystems.www.servers.unix</SAMP>
    or <SAMP>comp.infosystems.www.servers.ms-windows</SAMP> USENET
    newsgroup (as appropriate for the platform you use).</STRONG>
    <P>
    A lot of common problems never make it to the bug database because
    there's already high Q&amp;A traffic about them in the
    <A HREF="news:comp.infosystems.www.servers.unix"
    ><SAMP>comp.infosystems.www.servers.unix</SAMP></A>
    newsgroup.  Many Apache users, and some of the developers, can be
    found roaming its virtual halls, so it is suggested that you seek
    wisdom there.  The chances are good that you'll get a faster answer
    there than from the bug database, even if you <EM>don't</EM> see
    your question already posted.
    </P>
   </LI>
   <LI><STRONG>If all else fails, report the problem in the bug
    database</STRONG>
    <P>
    If you've gone through those steps above that are appropriate and
    have obtained no relief, then please <EM>do</EM> let The Apache
    Group know about the problem by
    <A HREF="http://www.apache.org/bug_report.html">logging a bug report</A>.
    </P>
    <P>
    If your problem involves the server crashing and generating a core
    dump, please include a backtrace (if possible).  As an example,
    </P>
    <P>
    <DL>
     <DD><CODE># cd <EM>ServerRoot</EM><BR>
      # dbx httpd core<BR>
      (dbx) where</CODE>
     </DD>
    </DL>
    <P></P>
    <P>
    (Substitute the appropriate locations for your
    <SAMP>ServerRoot</SAMP> and your <SAMP>httpd</SAMP> and
    <SAMP>core</SAMP> files.  You may have to use <CODE>gdb</CODE>
    instead of <CODE>dbx</CODE>.)
    </P>
   </LI>
  </OL>
  <HR>
 </LI>

 <LI><A NAME="compatible">
      <STRONG>How compatible is Apache with my existing NCSA 1.3
      setup?</STRONG>
     </A>
  <P>
  Apache attempts to offer all the features and configuration options
  of NCSA httpd 1.3, as well as many of the additional features found in
  NCSA httpd 1.4 and NCSA httpd 1.5.
  </P>
  <P>
  NCSA httpd appears to be moving toward adding experimental features
  which are not generally required at the moment. Some of the experiments
  will succeed while others will inevitably be dropped. The Apache
  philosophy is to add what's needed as and when it is needed.
  </P>
  <P>
  Friendly interaction between Apache and NCSA developers should ensure
  that fundamental feature enhancements stay consistent between the two
  servers for the foreseeable future.
  </P>
  <HR>
 </LI>

 <LI><A NAME="year2000">
      <STRONG>Is Apache Year 2000 compliant?</STRONG>
     </A>
  <P>
  Yes, Apache is Year 2000 compliant.
  </P>
  <P>
  Apache internally never stores years as two digits.
  On the HTTP protocol level RFC1123-style addresses are generated
  which is the only format a HTTP/1.1-compliant server should
  generate. To be compatible with older applications Apache
  recognizes ANSI C's <CODE>asctime()</CODE> and
  RFC850-/RFC1036-style date formats, too.
  The <CODE>asctime()</CODE> format uses four-digit years,
  but the RFC850 and RFC1036 date formats only define a two-digit year.
  If Apache sees such a date with a value less than 70 it assumes that
  the century is <SAMP>20</SAMP> rather than <SAMP>19</SAMP>.
  </P>
  <P>
  Although Apache is Year 2000 compliant, you may still get problems
  if the underlying OS has problems with dates past year 2000
  (<EM>e.g.</EM>, OS calls which accept or return year numbers).
  Most (UNIX) systems store dates internally as signed 32-bit integers
  which contain the number of seconds since 1<SUP>st</SUP> January 1970, so
  the magic boundary to worry about is the year 2038 and not 2000.
  But modern operating systems shouldn't cause any trouble
  at all.
  </P>
  <P>
  Users of Apache 1.2.x should upgrade to a current version of Apache 1.3
  (see <A HREF="../new_features_1_3.html#misc">year-2000 improvements in
  Apache 1.3</A> for details).
  </P>
  <p>
  The Apache HTTP Server project is an open-source software product of
  the Apache Software Foundation.  The project and the Foundation
  <b>cannot</b> offer legal assurances regarding any suitability
  of the software for your application.  There are several commercial
  Apache support organizations and derivative server products available
  that may be able to stand behind the software and provide you with
  any assurances you may require.  You may find links to some of these
  vendors at
  <samp>&lt;<a href="http://www.apache.org/info/support.cgi"
            >http://www.apache.org/info/support.cgi</a>&gt;</samp>.
  </p>
  <p>
  The Apache HTTP server software is distributed with the following
  disclaimer, found in the software license:
  </p>
  <pre>
   THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY
   EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
   IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
   PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE APACHE GROUP OR
   ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
   NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
   LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
   HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
   STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
   ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
   OF THE POSSIBILITY OF SUCH DAMAGE.
  </pre>
  <HR>
 </LI>

  <LI><A NAME="submit_patch">
       <STRONG>How do I submit a patch to the Apache Group?</STRONG></A>
   <P>
   The Apache Group encourages patches from outside developers. There
   are 2 main "types" of patches: small bugfixes and general
   improvements. Bugfixes should be submitting using the Apache <A
   HREF="http://www.apache.org/bug_report.html">bug report page</A>.
   Improvements, modifications, and additions should follow the
   instructions below.
   </P>
   <P>
   In general, the first course of action is to be a member of the
   <SAMP>new-httpd@apache.org</SAMP> mailing list. This indicates to
   the Group that you are closely following the latest Apache
   developments. Your patch file should be generated using either
   '<CODE>diff&nbsp;-c</CODE>' or '<CODE>diff&nbsp;-u</CODE>' against
   the latest CVS tree. To submit your patch, send email to
   <SAMP>new-httpd@apache.org</SAMP> with a <SAMP>Subject:</SAMP> line
   that starts with <SAMP>[PATCH]</SAMP> and includes a general
   description of the patch. In the body of the message, the patch
   should be clearly described and then included at the end of the
   message.  If the patch-file is long, you can note a URL to the file
   instead of the file itself. Use of MIME enclosures/attachments
   should be avoided.
   </P>
   <P>
   Be prepared to respond to any questions about your patches and
   possibly defend your code. If your patch results in a lot of
   discussion, you may be asked to submit an updated patch that
   incorporate all changes and suggestions.
   </P>
   <HR>
  </LI>

  <LI><A NAME="domination"><STRONG>Why has Apache stolen my favourite site's
       Internet address?</STRONG></A>
   <P>
   The simple answer is: "It hasn't."  This misconception is usually
   caused by the site in question having migrated to the Apache Web
   server software, but not having migrated the site's content yet.  When
   Apache is installed, the default page that gets installed tells the
   Webmaster the installation was successful.  The expectation is that
   this default page will be replaced with the site's real content.
   If it doesn't, complain to the Webmaster, not to the Apache project --
   we just make the software and aren't responsible for what people
   do (or don't do) with it.
   </P>
   <HR>
  </LI>

  <LI><A NAME="apspam"><STRONG>Why am I getting spam mail from the
       Apache site?</STRONG></A>
   <P>
   The short answer is: "You aren't."  Usually when someone thinks the
   Apache site is originating spam, it's because they've traced the
   spam to a Web site, and the Web site says it's using Apache.  See the
   <A HREF="#domination">previous FAQ entry</A> for more details on this
   phenomenon.
   </P>
   <P>
   No marketing spam originates from the Apache site.  The only mail
   that comes from the site goes only to addresses that have been
   <EM>requested</EM> to receive the mail.
   </P>
   <HR>
  </LI>

  <LI><A NAME="redist"><STRONG>May I include the Apache software on a
       CD or other package I'm distributing?</STRONG></A>
   <P>
   The detailed answer to this question can be found in the
   Apache license, which is included in the Apache distribution in
   the file <CODE>LICENSE</CODE>.  You can also find it on the Web at
   <SAMP>&lt;<A HREF="http://www.apache.org/LICENSE.txt"
             >http://www.apache.org/LICENSE.txt</A>&gt;</SAMP>.
   </P>
   <HR>
  </LI>

 <LI><A NAME="zoom">
      <STRONG>What's the best hardware/operating system/... How do
      I get the most out of my Apache Web server?</STRONG>
     </A>
  <P>
  Check out Dean Gaudet's
  <A HREF="http://www.apache.org/docs/misc/perf-tuning.html"
  >performance tuning page</A>.
  </P>
  <HR>
 </LI>

 <LI><A NAME="regex">
      <STRONG>What are "regular expressions"?</STRONG></A>
   <P>
   Regular expressions are a way of describing a pattern - for example, "all 
   the words that begin with the letter A" or "every 10-digit phone number" 
   or even "Every sentence with two commas in it, and no capital letter Q".  
   Regular expressions (aka "regexp"s) are useful in Apache because they 
   let you apply certain attributes against collections of files or resources 
   in very flexible ways - for example, all .gif and .jpg files under
   any "images" directory could be written as /.*\/images\/.*[jpg|gif]/.
   </P>
   <P>
   The best overview around is probably the one which comes with Perl.
   We implement a simple subset of Perl's regexp support, but it's
   still a good way to learn what they mean.  You can start by going
   to the <A
   HREF="http://www.perl.com/CPAN-local/doc/manual/html/pod/perlre.html#Version_8_Regular_Expresions"
   >CPAN page on regular expressions</A>, and branching out from
   there.
   </P>
  <HR>
 </LI>

 <li><a name="binaries">
      <b>Why isn't there a binary for my platform?</b></a>
   <p>
   The developers make sure that the software builds and works
   correctly on the platforms available to them; this does
   <i>not</i> necessarily mean that <i>your</i> platform
   is one of them.  In addition, the Apache HTTP server project
   is primarily source oriented, meaning that distributing
   valid and buildable source code is the purpose of a release,
   not making sure that there is a binary package for all of the
   supported platforms.
   </p>
   <p>
   If you don't see a kit for your platform listed in the
   binary distribution area
   (&lt;URL:<a href="http://www.apache.org/dist/binaries/"
            >http://www.apache.org/dist/binaries/</a>&gt;),
   it means either that the platform isn't available to any of
   the developers, or that they just haven't gotten around to
   preparing a binary for it.  As this is a voluntary project,
   they are under no obligation to do so.  Users are encouraged
   and expected to build the software themselves.
   </p>
   <p>
   The sole exception to these practices is the Windows package.
   Unlike most Unix and Unix-like platforms, Windows systems
   do not come with a bundled software development environment,
   so we <i>do</i> prepare binary kits for Windows when we make
   a release.  Again, however, it's a voluntary thing and only
   a limited number of the developers have the capability to build
   the InstallShield package, so the Windows release may lag
   somewhat behind the source release.  This lag should be
   no more than a few days at most.
   </p>
  <hr>
 </li>

</OL>
<!--#endif -->
<!--#if expr="$STANDALONE" -->
  <!-- Don't forget to add HR tags at the end of each list item.. -->

<!--#include virtual="footer.html" -->
</BODY>
</HTML>
<!--#endif -->
